package cn.com.fssg.platform.biz;

import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.stereotype.Component;

/**
 * 一些常用的业务方法
 */
@Component
public class BizUtil {

    public static BizUtil cur() {
        return null;
    }

    public boolean isLogin(){
        return cur() != null ? true : false;
    }

    /**
     * 获取雪花ID
     * @return
     */
    public String getSnowflakeIdStr(){
        return null;
    }

    /**
     * 当前用户id
     * @return
     */
    public String curUserId(){
        return null;
    }

    /**
     * 当前用户名称
     * @return
     */
    public String curLoginname(){
        return null;
    }

    /**
     * 当前用户名称
     * @return
     */
    public String curUserRealname(){
        return null;
    }

    /**
     * 当前部门id
     * @return
     */
    public String curUserDeptId(){
        return null;
    }

    /**
     * 当前部门名称
     * @return
     */
    public String curUserDeptName(){
        return null;
    }

    /**
     * 当前公司id
     * @return
     */
    public String curCompanyId(){
        return null;
    }

    /**
     * 当前公司名称
     * @return
     */
    public String curCompanyName(){
        return null;
    }

    /**
     * 当前用户是否包含其中一个角色
     *
     * @param roles 多个角色时,分割
     * @return
     */
    public boolean curUserRoleContain(String roles){
        return false;
    }

    /**
     * 当前用户所属主数据源的JdbcTemplate
     * @return
     */
    public NamedParameterJdbcTemplate tenantMainJdbcTemplate(){
        return null;
    }

    /**
     * 当前用户所属主数据源的JdbcTemplate
     * @return
     */
    public NamedParameterJdbcTemplate tenantJdbcTemplate(String key){
        return null;
    }

    /**
     * 免登录通过加密后的key获取租户数据源
     * @param key
     * @return
     */
    public NamedParameterJdbcTemplate noLoginGetTenantMainJdbcTemplate(String key) {
        return null;
    }

    /**
     * 是否超级管理员
     * @return
     */
    public boolean isAdminUser() {return true;}

}
